package edu.hawaii.halealohacli.command;

import javax.xml.datatype.XMLGregorianCalendar;
import org.wattdepot.client.WattDepotClient;
import org.wattdepot.resource.source.jaxb.Source;

/**
 * Command interface for HaleAloha WattDepot Command line Interface.
 * 
 * @author Russell Vea
 * @author David Wilkie
 * @author Yong Hong Hsu
 */
public interface Command {
  
  /**
   * Print the results of the Command.
   * @param client the WattDepot Client.
   * @param source the source to query (null if you want to query all sources).
   * @param days one or more timestamps to pass to WattDepotClient.
   * @throws Exception if there's an error with the server.
   */
  public void printResults(WattDepotClient client, Source source, 
      XMLGregorianCalendar... days) throws Exception;

}
